<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremoteESP8266: src/ir_Teco.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">IRremoteESP8266
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">ir_Teco.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="ir__Teco_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Copyright 2019 Fabien Valthier</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160; </div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">// Supports:</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">//   Brand: Alaska,  Model: SAC9010QC A/C</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">//   Brand: Alaska,  Model: SAC9010QC remote</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#ifndef IR_TECO_H_</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#define IR_TECO_H_</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;Arduino.h&gt;</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a>&quot;</span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRsend_8h.html">IRsend.h</a>&quot;</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#ifdef UNIT_TEST</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;IRsend_test.h&quot;</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html">   23</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionTecoProtocol.html">TecoProtocol</a>{</div>
<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#aaab0e91ca6ea4d346589d4b8db12b72c">   24</a></span>&#160;  uint64_t <a class="code" href="unionTecoProtocol.html#aaab0e91ca6ea4d346589d4b8db12b72c">raw</a>;  </div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;  <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a40b8ca2a2126c4bde467a308472ca446">   26</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#a40b8ca2a2126c4bde467a308472ca446">Mode</a>  :3;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a43035d0a8a9f00c5330a776a26b70465">   27</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#a43035d0a8a9f00c5330a776a26b70465">Power</a> :1;</div>
<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a9be4d4e129beee82ff43ac6b09dd7f58">   28</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#a9be4d4e129beee82ff43ac6b09dd7f58">Fan</a>   :2;</div>
<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a515148adf18ffca1dcab693a8e063479">   29</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#a515148adf18ffca1dcab693a8e063479">Swing</a> :1;</div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a1e154eb394b329d0a4bcda1f99f10b3a">   30</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#a1e154eb394b329d0a4bcda1f99f10b3a">Sleep</a> :1;</div>
<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#aa65998afac0fcadca42ce5c1262793a2">   31</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#aa65998afac0fcadca42ce5c1262793a2">Temp</a>  :4;</div>
<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#ae7eed85a01e7041535279d98ef65cf6a">   32</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#ae7eed85a01e7041535279d98ef65cf6a">HalfHour</a>  :1;</div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a666e09f45c649f518b68b575dc8212bb">   33</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#a666e09f45c649f518b68b575dc8212bb">TensHours</a> :2;  <span class="comment">// number of 10hours</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#ab6a0e79403cd997d43487d939e37be2b">   34</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#ab6a0e79403cd997d43487d939e37be2b">TimerOn</a>   :1;</div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a53501f83a1d730135ec75bfb5838821b">   35</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#a53501f83a1d730135ec75bfb5838821b">UnitHours</a> :4;  <span class="comment">// unit, not thenth</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a37db4d115d1b1bef9f71fa7bccb1865f">   36</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#a37db4d115d1b1bef9f71fa7bccb1865f">Humid</a> :1;</div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a00a2d53fdbfcb60461284374f8894b97">   37</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#a00a2d53fdbfcb60461284374f8894b97">Light</a> :1;</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a4f28c648b1ea808fa3f85dccd9aa7f0e">   38</a></span>&#160;    uint8_t :1;  <span class="comment">// &quot;Tree with bubbles&quot; / Filter?? (Not Implemented)</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#ae724fb83aed6d33cc43ec4ded5307983">   39</a></span>&#160;    uint8_t <a class="code" href="unionTecoProtocol.html#ae724fb83aed6d33cc43ec4ded5307983">Save</a>  :1;</div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a5fc378f32498bb71500d9ca68ccd71d6">   40</a></span>&#160;    uint8_t :8;  <span class="comment">// Cst 0x50</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="unionTecoProtocol.html#a6f255afef8feea0838b60ca308a3fe15">   41</a></span>&#160;    uint8_t :8;  <span class="comment">// Cst 0x02</span></div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;  };</div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;};</div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">// Constants.</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#a79178aa25d9f60c0a838285369e1b910">   46</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#a79178aa25d9f60c0a838285369e1b910">kTecoAuto</a> = 0;  <span class="comment">// temp = 25C</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#a554686c72b6bc487d03c9461f9633a6b">   47</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#a554686c72b6bc487d03c9461f9633a6b">kTecoCool</a> = 1;</div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#af7efcf371967eb97fd31d54016a82006">   48</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#af7efcf371967eb97fd31d54016a82006">kTecoDry</a> = 2;  <span class="comment">// temp = 25C, but not shown</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#a7385fe198242c9203e3a5d5ffb7beb4d">   49</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#a7385fe198242c9203e3a5d5ffb7beb4d">kTecoFan</a> = 3;</div>
<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#ab6f9dbeb2838b124be12d08fd9b209bb">   50</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#ab6f9dbeb2838b124be12d08fd9b209bb">kTecoHeat</a> = 4;</div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#a43e58c0158efac1c4e5497c619b5674c">   51</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#a43e58c0158efac1c4e5497c619b5674c">kTecoFanAuto</a> = 0;  <span class="comment">// 0b00</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#abac7443a86fb304376dd94a9c10e6940">   52</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#abac7443a86fb304376dd94a9c10e6940">kTecoFanLow</a> = 1;   <span class="comment">// 0b01</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#a35f313943f9e2f5b69d5237fdaa64914">   53</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#a35f313943f9e2f5b69d5237fdaa64914">kTecoFanMed</a> = 2;   <span class="comment">// 0b10</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#a0a73f5f892e7f9812793fbf5dab458dd">   54</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#a0a73f5f892e7f9812793fbf5dab458dd">kTecoFanHigh</a> = 3;  <span class="comment">// 0b11</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#a54da99bfcbea5e076c3ca2934e769ab1">   55</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#a54da99bfcbea5e076c3ca2934e769ab1">kTecoMinTemp</a> = 16;   <span class="comment">// 16C</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#a1c24aa0cc4d475a5eb97d5208f4dcf06">   56</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Teco_8h.html#a1c24aa0cc4d475a5eb97d5208f4dcf06">kTecoMaxTemp</a> = 30;   <span class="comment">// 30C</span></div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="ir__Teco_8h.html#acf559a2cd772835ce46c3f673cd95806">   58</a></span>&#160;<span class="keyword">const</span> uint64_t <a class="code" href="ir__Teco_8h.html#acf559a2cd772835ce46c3f673cd95806">kTecoReset</a> =      0b01001010000000000000010000000000000;</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160; </div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">// Classes</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classIRTecoAc.html">   62</a></span>&#160;<span class="comment"></span><span class="keyword">class </span><a class="code" href="classIRTecoAc.html">IRTecoAc</a> {</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classIRTecoAc.html#a56e3f31a080bfd565570bf3b165e71d4">IRTecoAc</a>(<span class="keyword">const</span> uint16_t pin, <span class="keyword">const</span> <span class="keywordtype">bool</span> inverted = <span class="keyword">false</span>,</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;                    <span class="keyword">const</span> <span class="keywordtype">bool</span> use_modulation = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#ad53e6f3d3693ee6efb419326a3d4c492">stateReset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">#if SEND_TECO</span></div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#ad5785e93e8c0c95a8618b0e371adaa79">send</a>(<span class="keyword">const</span> uint16_t repeat = <a class="code" href="IRremoteESP8266_8h.html#a095362359f34c1ee5ab71d56e6d64f64">kTecoDefaultRepeat</a>);</div>
<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classIRTecoAc.html#ad700578cbae74857483372597a399ff3">   73</a></span>&#160;  int8_t <a class="code" href="classIRTecoAc.html#ad700578cbae74857483372597a399ff3">calibrate</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <a class="code" href="classIRTecoAc.html#a283ff8b73ef2998f0668d0a03cba0938">_irsend</a>.<a class="code" href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">calibrate</a>(); }</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">#endif  // SEND_TECO</span></div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#a3b23a8556686c83b146101fc31b0dff3">begin</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#af26015e5c663c346cf7db6d8af3f8c60">on</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#ade1b1541bf2de053c78657af1ebcd001">off</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#a989e48a889b36ec36386a532c81872d9">setPower</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#af26015e5c663c346cf7db6d8af3f8c60">on</a>);</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#a66002ccce4fb4537ac5d937bc3ade7b5">getPower</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160; </div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#a405106cb572dac338d79da48fe7a7cb3">setTemp</a>(<span class="keyword">const</span> uint8_t temp);</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;  uint8_t <a class="code" href="classIRTecoAc.html#adb87a792c60fd2698f9333d96327dba7">getTemp</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160; </div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#afda9a33ca450568f968217bedc9ad7f2">setFan</a>(<span class="keyword">const</span> uint8_t fan);</div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;  uint8_t <a class="code" href="classIRTecoAc.html#ad7c6b4f2a79582deb67e4928796392a6">getFan</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#aba404540b723fa4687a4fda954221130">setMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;  uint8_t <a class="code" href="classIRTecoAc.html#ad62055752174ef33b5444419162291aa">getMode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#aaaeb10176c0b73e72fdb63b53fdcd5d0">setSwing</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#af26015e5c663c346cf7db6d8af3f8c60">on</a>);</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#a91d2fb0dfbbfb3c97ec9691655ee111f">getSwing</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160; </div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#a1e989a4fbd21c507ba13014b1e336ce2">setSleep</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#af26015e5c663c346cf7db6d8af3f8c60">on</a>);</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#a3a86eb6a4d6d1b4ae0069aea245c0d86">getSleep</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160; </div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#a25d97c1e7be31d80a4ffad0026e633d7">setLight</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#af26015e5c663c346cf7db6d8af3f8c60">on</a>);</div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#ab5135b0873c172036f1a2426c96504ce">getLight</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160; </div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#a4ab07a7c95f34d3b292926c719aeb303">setHumid</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#af26015e5c663c346cf7db6d8af3f8c60">on</a>);</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#a47072d5984da8284b28ac9ab093f275c">getHumid</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#a0f7d203d44d4040be3a4b28fcd5dd34c">setSave</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#af26015e5c663c346cf7db6d8af3f8c60">on</a>);</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#a75175a6a3bbe4bc37323042c1f902a34">getSave</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;  uint16_t <a class="code" href="classIRTecoAc.html#a3a9a48da5f42ae26f1c2f250702744f6">getTimer</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#a88a84e22d53a204da754c04210fadd04">setTimer</a>(<span class="keyword">const</span> uint16_t mins);</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;  uint64_t <a class="code" href="classIRTecoAc.html#ab88386c5c7669437dfbb91b1fa6321ed">getRaw</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRTecoAc.html#a1ef3423214f55a2e2695cc1180f94bcc">setRaw</a>(<span class="keyword">const</span> uint64_t new_code);</div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160; </div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRTecoAc.html#a5f95c5aacd8fc312acd0f36fd9dc33f2">convertMode</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode);</div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRTecoAc.html#a262aead12607ff962dd97c73e6dea078">convertFan</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed);</div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> <a class="code" href="classIRTecoAc.html#ac6c7011b31208887de6d15edbffb211a">toCommonMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> <a class="code" href="classIRTecoAc.html#ac3ad2828770440695969d696ca6ff46d">toCommonFanSpeed</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> <a class="code" href="classIRTecoAc.html#a35b2c56f7667d4f1ebe81ac28e7a38c7">toCommon</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <a class="code" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a> <a class="code" href="classIRTecoAc.html#a9fe1e8da3cc963d5d55a4967fe83dcce">toString</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; </div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="classIRTecoAc.html#a283ff8b73ef2998f0668d0a03cba0938">  121</a></span>&#160;  <a class="code" href="classIRsend.html">IRsend</a> <a class="code" href="classIRTecoAc.html#a283ff8b73ef2998f0668d0a03cba0938">_irsend</a>;  </div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;<span class="preprocessor">#else  // UNIT_TEST</span></div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;  IRsendTest <a class="code" href="classIRTecoAc.html#a283ff8b73ef2998f0668d0a03cba0938">_irsend</a>;  </div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="preprocessor">#endif  // UNIT_TEST</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="classIRTecoAc.html#a1d46a7c59ae9a0d87e092231de2d2510">  127</a></span>&#160;  <a class="code" href="unionTecoProtocol.html">TecoProtocol</a> <a class="code" href="classIRTecoAc.html#a1d46a7c59ae9a0d87e092231de2d2510">_</a>;</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRTecoAc.html#a82ab7f210c10406b2a30f41f129d4a39">getTimerEnabled</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;};</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160; </div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;<span class="preprocessor">#endif  // IR_TECO_H_</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="aunionTecoProtocol_html_a666e09f45c649f518b68b575dc8212bb"><div class="ttname"><a href="unionTecoProtocol.html#a666e09f45c649f518b68b575dc8212bb">TecoProtocol::TensHours</a></div><div class="ttdeci">uint8_t TensHours</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:33</div></div>
<div class="ttc" id="aunionTecoProtocol_html_ab6a0e79403cd997d43487d939e37be2b"><div class="ttname"><a href="unionTecoProtocol.html#ab6a0e79403cd997d43487d939e37be2b">TecoProtocol::TimerOn</a></div><div class="ttdeci">uint8_t TimerOn</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:34</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a9fe1e8da3cc963d5d55a4967fe83dcce"><div class="ttname"><a href="classIRTecoAc.html#a9fe1e8da3cc963d5d55a4967fe83dcce">IRTecoAc::toString</a></div><div class="ttdeci">String toString(void) const</div><div class="ttdoc">Convert the current internal state into a human readable string.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:322</div></div>
<div class="ttc" id="air__Teco_8h_html_a35f313943f9e2f5b69d5237fdaa64914"><div class="ttname"><a href="ir__Teco_8h.html#a35f313943f9e2f5b69d5237fdaa64914">kTecoFanMed</a></div><div class="ttdeci">const uint8_t kTecoFanMed</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:53</div></div>
<div class="ttc" id="air__Teco_8h_html_acf559a2cd772835ce46c3f673cd95806"><div class="ttname"><a href="ir__Teco_8h.html#acf559a2cd772835ce46c3f673cd95806">kTecoReset</a></div><div class="ttdeci">const uint64_t kTecoReset</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:58</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ac6c7011b31208887de6d15edbffb211a"><div class="ttname"><a href="classIRTecoAc.html#ac6c7011b31208887de6d15edbffb211a">IRTecoAc::toCommonMode</a></div><div class="ttdeci">static stdAc::opmode_t toCommonMode(const uint8_t mode)</div><div class="ttdoc">Convert a native mode into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:272</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ade1b1541bf2de053c78657af1ebcd001"><div class="ttname"><a href="classIRTecoAc.html#ade1b1541bf2de053c78657af1ebcd001">IRTecoAc::off</a></div><div class="ttdeci">void off(void)</div><div class="ttdoc">Set the requested power state of the A/C to off.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:82</div></div>
<div class="ttc" id="anamespacestdAc_html_a8bb0dbf18fe69f639f4ac0b3ff133383"><div class="ttname"><a href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a></div><div class="ttdeci">fanspeed_t</div><div class="ttdoc">Common A/C settings for Fan Speeds.</div><div class="ttdef"><b>Definition:</b> IRsend.h:58</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ab5135b0873c172036f1a2426c96504ce"><div class="ttname"><a href="classIRTecoAc.html#ab5135b0873c172036f1a2426c96504ce">IRTecoAc::getLight</a></div><div class="ttdeci">bool getLight(void) const</div><div class="ttdoc">Get the Light (LED/Display) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:184</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a5f95c5aacd8fc312acd0f36fd9dc33f2"><div class="ttname"><a href="classIRTecoAc.html#a5f95c5aacd8fc312acd0f36fd9dc33f2">IRTecoAc::convertMode</a></div><div class="ttdeci">static uint8_t convertMode(const stdAc::opmode_t mode)</div><div class="ttdoc">Convert a stdAc::opmode_t enum into its native mode.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:245</div></div>
<div class="ttc" id="aunionTecoProtocol_html_a515148adf18ffca1dcab693a8e063479"><div class="ttname"><a href="unionTecoProtocol.html#a515148adf18ffca1dcab693a8e063479">TecoProtocol::Swing</a></div><div class="ttdeci">uint8_t Swing</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:29</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ad62055752174ef33b5444419162291aa"><div class="ttname"><a href="classIRTecoAc.html#ad62055752174ef33b5444419162291aa">IRTecoAc::getMode</a></div><div class="ttdeci">uint8_t getMode(void) const</div><div class="ttdoc">Get the operating mode setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:148</div></div>
<div class="ttc" id="aunionTecoProtocol_html_a37db4d115d1b1bef9f71fa7bccb1865f"><div class="ttname"><a href="unionTecoProtocol.html#a37db4d115d1b1bef9f71fa7bccb1865f">TecoProtocol::Humid</a></div><div class="ttdeci">uint8_t Humid</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:36</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ad700578cbae74857483372597a399ff3"><div class="ttname"><a href="classIRTecoAc.html#ad700578cbae74857483372597a399ff3">IRTecoAc::calibrate</a></div><div class="ttdeci">int8_t calibrate(void)</div><div class="ttdoc">Run the calibration to calculate uSec timing offsets for this platform.</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:73</div></div>
<div class="ttc" id="aIRsend_8h_html"><div class="ttname"><a href="IRsend_8h.html">IRsend.h</a></div></div>
<div class="ttc" id="aunionTecoProtocol_html_ae724fb83aed6d33cc43ec4ded5307983"><div class="ttname"><a href="unionTecoProtocol.html#ae724fb83aed6d33cc43ec4ded5307983">TecoProtocol::Save</a></div><div class="ttdeci">uint8_t Save</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:39</div></div>
<div class="ttc" id="air__Teco_8h_html_a54da99bfcbea5e076c3ca2934e769ab1"><div class="ttname"><a href="ir__Teco_8h.html#a54da99bfcbea5e076c3ca2934e769ab1">kTecoMinTemp</a></div><div class="ttdeci">const uint8_t kTecoMinTemp</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:55</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a1ef3423214f55a2e2695cc1180f94bcc"><div class="ttname"><a href="classIRTecoAc.html#a1ef3423214f55a2e2695cc1180f94bcc">IRTecoAc::setRaw</a></div><div class="ttdeci">void setRaw(const uint64_t new_code)</div><div class="ttdoc">Set the internal state from a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:76</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a56e3f31a080bfd565570bf3b165e71d4"><div class="ttname"><a href="classIRTecoAc.html#a56e3f31a080bfd565570bf3b165e71d4">IRTecoAc::IRTecoAc</a></div><div class="ttdeci">IRTecoAc(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)</div><div class="ttdoc">Class constructor.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:49</div></div>
<div class="ttc" id="air__Teco_8h_html_a1c24aa0cc4d475a5eb97d5208f4dcf06"><div class="ttname"><a href="ir__Teco_8h.html#a1c24aa0cc4d475a5eb97d5208f4dcf06">kTecoMaxTemp</a></div><div class="ttdeci">const uint8_t kTecoMaxTemp</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:56</div></div>
<div class="ttc" id="aunionTecoProtocol_html_a53501f83a1d730135ec75bfb5838821b"><div class="ttname"><a href="unionTecoProtocol.html#a53501f83a1d730135ec75bfb5838821b">TecoProtocol::UnitHours</a></div><div class="ttdeci">uint8_t UnitHours</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:35</div></div>
<div class="ttc" id="aclassIRsend_html"><div class="ttname"><a href="classIRsend.html">IRsend</a></div><div class="ttdoc">Class for sending all basic IR protocols.</div><div class="ttdef"><b>Definition:</b> IRsend.h:208</div></div>
<div class="ttc" id="aclassIRTecoAc_html_af26015e5c663c346cf7db6d8af3f8c60"><div class="ttname"><a href="classIRTecoAc.html#af26015e5c663c346cf7db6d8af3f8c60">IRTecoAc::on</a></div><div class="ttdeci">void on(void)</div><div class="ttdoc">Set the requested power state of the A/C to on.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:79</div></div>
<div class="ttc" id="air__Teco_8h_html_af7efcf371967eb97fd31d54016a82006"><div class="ttname"><a href="ir__Teco_8h.html#af7efcf371967eb97fd31d54016a82006">kTecoDry</a></div><div class="ttdeci">const uint8_t kTecoDry</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:48</div></div>
<div class="ttc" id="aclassIRsend_html_ad1776aa6c699f9eeca1eef9bb4fe355b"><div class="ttname"><a href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">IRsend::calibrate</a></div><div class="ttdeci">int8_t calibrate(uint16_t hz=38000U)</div><div class="ttdoc">Calculate &amp; set any offsets to account for execution times during sending.</div><div class="ttdef"><b>Definition:</b> IRsend.cpp:207</div></div>
<div class="ttc" id="air__Teco_8h_html_ab6f9dbeb2838b124be12d08fd9b209bb"><div class="ttname"><a href="ir__Teco_8h.html#ab6f9dbeb2838b124be12d08fd9b209bb">kTecoHeat</a></div><div class="ttdeci">const uint8_t kTecoHeat</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:50</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a3a9a48da5f42ae26f1c2f250702744f6"><div class="ttname"><a href="classIRTecoAc.html#a3a9a48da5f42ae26f1c2f250702744f6">IRTecoAc::getTimer</a></div><div class="ttdeci">uint16_t getTimer(void) const</div><div class="ttdoc">Get the timer time for when the A/C unit will switch power state.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:220</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_afbeda3fd1bdc8c37d01bdf9f5c8274ff"><div class="ttname"><a href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a></div><div class="ttdeci">std::string String</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1309</div></div>
<div class="ttc" id="aunionTecoProtocol_html"><div class="ttname"><a href="unionTecoProtocol.html">TecoProtocol</a></div><div class="ttdoc">Native representation of a Teco A/C message.</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:23</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a989e48a889b36ec36386a532c81872d9"><div class="ttname"><a href="classIRTecoAc.html#a989e48a889b36ec36386a532c81872d9">IRTecoAc::setPower</a></div><div class="ttdeci">void setPower(const bool on)</div><div class="ttdoc">Change the power setting.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:86</div></div>
<div class="ttc" id="aclassIRTecoAc_html_aaaeb10176c0b73e72fdb63b53fdcd5d0"><div class="ttname"><a href="classIRTecoAc.html#aaaeb10176c0b73e72fdb63b53fdcd5d0">IRTecoAc::setSwing</a></div><div class="ttdeci">void setSwing(const bool on)</div><div class="ttdoc">Set the (vertical) swing setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:154</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html"><div class="ttname"><a href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a></div></div>
<div class="ttc" id="aclassIRTecoAc_html_adb87a792c60fd2698f9333d96327dba7"><div class="ttname"><a href="classIRTecoAc.html#adb87a792c60fd2698f9333d96327dba7">IRTecoAc::getTemp</a></div><div class="ttdeci">uint8_t getTemp(void) const</div><div class="ttdoc">Get the current temperature setting.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:107</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a3a86eb6a4d6d1b4ae0069aea245c0d86"><div class="ttname"><a href="classIRTecoAc.html#a3a86eb6a4d6d1b4ae0069aea245c0d86">IRTecoAc::getSleep</a></div><div class="ttdeci">bool getSleep(void) const</div><div class="ttdoc">Get the Sleep setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:172</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a4ab07a7c95f34d3b292926c719aeb303"><div class="ttname"><a href="classIRTecoAc.html#a4ab07a7c95f34d3b292926c719aeb303">IRTecoAc::setHumid</a></div><div class="ttdeci">void setHumid(const bool on)</div><div class="ttdoc">Set the Humid setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:190</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a66002ccce4fb4537ac5d937bc3ade7b5"><div class="ttname"><a href="classIRTecoAc.html#a66002ccce4fb4537ac5d937bc3ade7b5">IRTecoAc::getPower</a></div><div class="ttdeci">bool getPower(void) const</div><div class="ttdoc">Get the value of the current power setting.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:92</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a88a84e22d53a204da754c04210fadd04"><div class="ttname"><a href="classIRTecoAc.html#a88a84e22d53a204da754c04210fadd04">IRTecoAc::setTimer</a></div><div class="ttdeci">void setTimer(const uint16_t mins)</div><div class="ttdoc">Set the timer for when the A/C unit will switch power state.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:233</div></div>
<div class="ttc" id="air__Teco_8h_html_abac7443a86fb304376dd94a9c10e6940"><div class="ttname"><a href="ir__Teco_8h.html#abac7443a86fb304376dd94a9c10e6940">kTecoFanLow</a></div><div class="ttdeci">const uint8_t kTecoFanLow</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:52</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a1e989a4fbd21c507ba13014b1e336ce2"><div class="ttname"><a href="classIRTecoAc.html#a1e989a4fbd21c507ba13014b1e336ce2">IRTecoAc::setSleep</a></div><div class="ttdeci">void setSleep(const bool on)</div><div class="ttdoc">Set the Sleep setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:166</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a3b23a8556686c83b146101fc31b0dff3"><div class="ttname"><a href="classIRTecoAc.html#a3b23a8556686c83b146101fc31b0dff3">IRTecoAc::begin</a></div><div class="ttdeci">void begin(void)</div><div class="ttdoc">Set up hardware to be able to send a message.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:54</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_a095362359f34c1ee5ab71d56e6d64f64"><div class="ttname"><a href="IRremoteESP8266_8h.html#a095362359f34c1ee5ab71d56e6d64f64">kTecoDefaultRepeat</a></div><div class="ttdeci">const uint16_t kTecoDefaultRepeat</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1195</div></div>
<div class="ttc" id="aunionTecoProtocol_html_aa65998afac0fcadca42ce5c1262793a2"><div class="ttname"><a href="unionTecoProtocol.html#aa65998afac0fcadca42ce5c1262793a2">TecoProtocol::Temp</a></div><div class="ttdeci">uint8_t Temp</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:31</div></div>
<div class="ttc" id="air__Teco_8h_html_a43e58c0158efac1c4e5497c619b5674c"><div class="ttname"><a href="ir__Teco_8h.html#a43e58c0158efac1c4e5497c619b5674c">kTecoFanAuto</a></div><div class="ttdeci">const uint8_t kTecoFanAuto</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:51</div></div>
<div class="ttc" id="aunionTecoProtocol_html_a9be4d4e129beee82ff43ac6b09dd7f58"><div class="ttname"><a href="unionTecoProtocol.html#a9be4d4e129beee82ff43ac6b09dd7f58">TecoProtocol::Fan</a></div><div class="ttdeci">uint8_t Fan</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:28</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ad7c6b4f2a79582deb67e4928796392a6"><div class="ttname"><a href="classIRTecoAc.html#ad7c6b4f2a79582deb67e4928796392a6">IRTecoAc::getFan</a></div><div class="ttdeci">uint8_t getFan(void) const</div><div class="ttdoc">Get the current fan speed setting.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:127</div></div>
<div class="ttc" id="air__Teco_8h_html_a554686c72b6bc487d03c9461f9633a6b"><div class="ttname"><a href="ir__Teco_8h.html#a554686c72b6bc487d03c9461f9633a6b">kTecoCool</a></div><div class="ttdeci">const uint8_t kTecoCool</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:47</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a82ab7f210c10406b2a30f41f129d4a39"><div class="ttname"><a href="classIRTecoAc.html#a82ab7f210c10406b2a30f41f129d4a39">IRTecoAc::getTimerEnabled</a></div><div class="ttdeci">bool getTimerEnabled(void) const</div><div class="ttdoc">Is the timer function enabled?</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:214</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a91d2fb0dfbbfb3c97ec9691655ee111f"><div class="ttname"><a href="classIRTecoAc.html#a91d2fb0dfbbfb3c97ec9691655ee111f">IRTecoAc::getSwing</a></div><div class="ttdeci">bool getSwing(void) const</div><div class="ttdoc">Get the (vertical) swing setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:160</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a405106cb572dac338d79da48fe7a7cb3"><div class="ttname"><a href="classIRTecoAc.html#a405106cb572dac338d79da48fe7a7cb3">IRTecoAc::setTemp</a></div><div class="ttdeci">void setTemp(const uint8_t temp)</div><div class="ttdoc">Set the temperature.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:98</div></div>
<div class="ttc" id="aclassIRTecoAc_html_aba404540b723fa4687a4fda954221130"><div class="ttname"><a href="classIRTecoAc.html#aba404540b723fa4687a4fda954221130">IRTecoAc::setMode</a></div><div class="ttdeci">void setMode(const uint8_t mode)</div><div class="ttdoc">Set the operating mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:133</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ac3ad2828770440695969d696ca6ff46d"><div class="ttname"><a href="classIRTecoAc.html#ac3ad2828770440695969d696ca6ff46d">IRTecoAc::toCommonFanSpeed</a></div><div class="ttdeci">static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)</div><div class="ttdoc">Convert a native fan speed into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:285</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a47072d5984da8284b28ac9ab093f275c"><div class="ttname"><a href="classIRTecoAc.html#a47072d5984da8284b28ac9ab093f275c">IRTecoAc::getHumid</a></div><div class="ttdeci">bool getHumid(void) const</div><div class="ttdoc">Get the Humid setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:196</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a0f7d203d44d4040be3a4b28fcd5dd34c"><div class="ttname"><a href="classIRTecoAc.html#a0f7d203d44d4040be3a4b28fcd5dd34c">IRTecoAc::setSave</a></div><div class="ttdeci">void setSave(const bool on)</div><div class="ttdoc">Set the Save setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:202</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ad53e6f3d3693ee6efb419326a3d4c492"><div class="ttname"><a href="classIRTecoAc.html#ad53e6f3d3693ee6efb419326a3d4c492">IRTecoAc::stateReset</a></div><div class="ttdeci">void stateReset(void)</div><div class="ttdoc">Reset the internal state of the emulation.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:66</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a1d46a7c59ae9a0d87e092231de2d2510"><div class="ttname"><a href="classIRTecoAc.html#a1d46a7c59ae9a0d87e092231de2d2510">IRTecoAc::_</a></div><div class="ttdeci">TecoProtocol _</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:127</div></div>
<div class="ttc" id="aunionTecoProtocol_html_ae7eed85a01e7041535279d98ef65cf6a"><div class="ttname"><a href="unionTecoProtocol.html#ae7eed85a01e7041535279d98ef65cf6a">TecoProtocol::HalfHour</a></div><div class="ttdeci">uint8_t HalfHour</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:32</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ab88386c5c7669437dfbb91b1fa6321ed"><div class="ttname"><a href="classIRTecoAc.html#ab88386c5c7669437dfbb91b1fa6321ed">IRTecoAc::getRaw</a></div><div class="ttdeci">uint64_t getRaw(void) const</div><div class="ttdoc">Get a copy of the internal state/code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:72</div></div>
<div class="ttc" id="air__Teco_8h_html_a7385fe198242c9203e3a5d5ffb7beb4d"><div class="ttname"><a href="ir__Teco_8h.html#a7385fe198242c9203e3a5d5ffb7beb4d">kTecoFan</a></div><div class="ttdeci">const uint8_t kTecoFan</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:49</div></div>
<div class="ttc" id="aunionTecoProtocol_html_a00a2d53fdbfcb60461284374f8894b97"><div class="ttname"><a href="unionTecoProtocol.html#a00a2d53fdbfcb60461284374f8894b97">TecoProtocol::Light</a></div><div class="ttdeci">uint8_t Light</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:37</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a75175a6a3bbe4bc37323042c1f902a34"><div class="ttname"><a href="classIRTecoAc.html#a75175a6a3bbe4bc37323042c1f902a34">IRTecoAc::getSave</a></div><div class="ttdeci">bool getSave(void) const</div><div class="ttdoc">Get the Save setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:208</div></div>
<div class="ttc" id="aunionTecoProtocol_html_a43035d0a8a9f00c5330a776a26b70465"><div class="ttname"><a href="unionTecoProtocol.html#a43035d0a8a9f00c5330a776a26b70465">TecoProtocol::Power</a></div><div class="ttdeci">uint8_t Power</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:27</div></div>
<div class="ttc" id="aclassIRTecoAc_html"><div class="ttname"><a href="classIRTecoAc.html">IRTecoAc</a></div><div class="ttdoc">Class for handling detailed Teco A/C messages.</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:62</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a262aead12607ff962dd97c73e6dea078"><div class="ttname"><a href="classIRTecoAc.html#a262aead12607ff962dd97c73e6dea078">IRTecoAc::convertFan</a></div><div class="ttdeci">static uint8_t convertFan(const stdAc::fanspeed_t speed)</div><div class="ttdoc">Convert a stdAc::fanspeed_t enum into it's native speed.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:258</div></div>
<div class="ttc" id="aunionTecoProtocol_html_a1e154eb394b329d0a4bcda1f99f10b3a"><div class="ttname"><a href="unionTecoProtocol.html#a1e154eb394b329d0a4bcda1f99f10b3a">TecoProtocol::Sleep</a></div><div class="ttdeci">uint8_t Sleep</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:30</div></div>
<div class="ttc" id="aunionTecoProtocol_html_a40b8ca2a2126c4bde467a308472ca446"><div class="ttname"><a href="unionTecoProtocol.html#a40b8ca2a2126c4bde467a308472ca446">TecoProtocol::Mode</a></div><div class="ttdeci">uint8_t Mode</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:26</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a283ff8b73ef2998f0668d0a03cba0938"><div class="ttname"><a href="classIRTecoAc.html#a283ff8b73ef2998f0668d0a03cba0938">IRTecoAc::_irsend</a></div><div class="ttdeci">IRsend _irsend</div><div class="ttdoc">Instance of the IR send class.</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:121</div></div>
<div class="ttc" id="aunionTecoProtocol_html_aaab0e91ca6ea4d346589d4b8db12b72c"><div class="ttname"><a href="unionTecoProtocol.html#aaab0e91ca6ea4d346589d4b8db12b72c">TecoProtocol::raw</a></div><div class="ttdeci">uint64_t raw</div><div class="ttdoc">The state of the IR remote in IR code form.</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:24</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a25d97c1e7be31d80a4ffad0026e633d7"><div class="ttname"><a href="classIRTecoAc.html#a25d97c1e7be31d80a4ffad0026e633d7">IRTecoAc::setLight</a></div><div class="ttdeci">void setLight(const bool on)</div><div class="ttdoc">Set the Light (LED/Display) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:178</div></div>
<div class="ttc" id="aclassIRTecoAc_html_ad5785e93e8c0c95a8618b0e371adaa79"><div class="ttname"><a href="classIRTecoAc.html#ad5785e93e8c0c95a8618b0e371adaa79">IRTecoAc::send</a></div><div class="ttdeci">void send(const uint16_t repeat=kTecoDefaultRepeat)</div><div class="ttdoc">Send the current internal state as an IR message.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:59</div></div>
<div class="ttc" id="air__Teco_8h_html_a0a73f5f892e7f9812793fbf5dab458dd"><div class="ttname"><a href="ir__Teco_8h.html#a0a73f5f892e7f9812793fbf5dab458dd">kTecoFanHigh</a></div><div class="ttdeci">const uint8_t kTecoFanHigh</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:54</div></div>
<div class="ttc" id="astructstdAc_1_1state__t_html"><div class="ttname"><a href="structstdAc_1_1state__t.html">stdAc::state_t</a></div><div class="ttdoc">Structure to hold a common A/C state.</div><div class="ttdef"><b>Definition:</b> IRsend.h:97</div></div>
<div class="ttc" id="aclassIRTecoAc_html_a35b2c56f7667d4f1ebe81ac28e7a38c7"><div class="ttname"><a href="classIRTecoAc.html#a35b2c56f7667d4f1ebe81ac28e7a38c7">IRTecoAc::toCommon</a></div><div class="ttdeci">stdAc::state_t toCommon(void) const</div><div class="ttdoc">Convert the current internal state into its stdAc::state_t equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:296</div></div>
<div class="ttc" id="air__Teco_8h_html_a79178aa25d9f60c0a838285369e1b910"><div class="ttname"><a href="ir__Teco_8h.html#a79178aa25d9f60c0a838285369e1b910">kTecoAuto</a></div><div class="ttdeci">const uint8_t kTecoAuto</div><div class="ttdef"><b>Definition:</b> ir_Teco.h:46</div></div>
<div class="ttc" id="aclassIRTecoAc_html_afda9a33ca450568f968217bedc9ad7f2"><div class="ttname"><a href="classIRTecoAc.html#afda9a33ca450568f968217bedc9ad7f2">IRTecoAc::setFan</a></div><div class="ttdeci">void setFan(const uint8_t fan)</div><div class="ttdoc">Set the speed of the fan.</div><div class="ttdef"><b>Definition:</b> ir_Teco.cpp:113</div></div>
<div class="ttc" id="anamespacestdAc_html_a99ad268c783486f9b3207cb78f48444f"><div class="ttname"><a href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a></div><div class="ttdeci">opmode_t</div><div class="ttdoc">Common A/C settings for A/C operating modes.</div><div class="ttdef"><b>Definition:</b> IRsend.h:46</div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
